#if !defined(FAKE_D3D10_TEXTURE1D_H)
#define FAKE_D3D10_TEXTURE1D_H

#include "Fakes/FakeD3D10Resource.h"
#include <rt/Exceptions/NotImplementedException.h>

class FakeD3D10Texture1D : public ID3D10Texture1D
{
public:
	FakeD3D10Texture1D()
		: Resource(),
		GetDescCalled(false), GetDescFakeResult()
	{
	}
	bool GetDescCalled;
	D3D10_TEXTURE1D_DESC GetDescFakeResult;

	CONTAIN_RESOURCE(Resource);

	virtual HRESULT STDMETHODCALLTYPE Map(UINT Subresource, D3D10_MAP MapType, UINT MapFlags, void **ppData){ throw rt::NotImplementedException(); }
	virtual void STDMETHODCALLTYPE Unmap(UINT Subresource){ throw rt::NotImplementedException(); }
	virtual void STDMETHODCALLTYPE GetDesc(D3D10_TEXTURE1D_DESC *pDesc)
	{
		GetDescCalled = true;
		*pDesc = GetDescFakeResult;
	}
};

#endif
